The amount of information in organizations is increasing exponentially. Much of this information is unstructured because complex, heterogeneous systems typically crowd the typical IT landscape such as, for example, applications or components of applications, documents on department file servers, web pages on subsidiary web servers, e-mail, groupware, slide presentations, and many others. These unstructured and unmanaged resources often contain mission-critical knowledge that companies need to maximize business advantage. In some situations, an enterprise portal may be used to provide a point of access to these applications, information, and services for employees and to transform that information into organizational knowledge. But these portals are often rather simple and merely provide one access point to underlying complexity. Moreover, customers and partners typically have a difficult time finding and understanding components that can be reused when creating new solutions. This difficulty may be increased because development components are frequently located in different repositories, are hard to find, are difficult to understand once found, and may be complicated to reuse when possible.